/**
 * 默认校验：校验不超过32个字符并且不能输入特殊字符
 */
export const validator = (rule, value, callback) => {
  const regex = /^[^!@#$%^&*]*$/;
  if (!regex.test(value)) {
    callback(new Error("禁止输入特殊字符"));
  } else if (value?.length > 32) {
    callback(new Error("长度不能超过32"));
  } else {
    callback();
  }
};
const rules = [{ validator, trigger: "blur" }];
/**
 * 修改商品名称表单配置
 */
export const nameConfig = {
  title: "修改产品名称",
  align: "top",
  list: [
    {
      field: "prefixName",
      label: "开头增加",
      type: "input",
      placeholder: "请输入需要增加的产品标题",
      rules,
      tip: "xxxxx 开头新增的标题位置 原有是产品标题xxxxx{最多可总增加32个字符}"
    },
    {
      field: "suffixName",
      label: "结尾增加",
      type: "input",
      placeholder: "请输入需要增加的产品标题",
      rules,
      tip: "原有是产品标题xxxxxxxxxx 结尾新增的标题位置 {最多可总增加32个字符}"
    },
    {
      field: "findName",
      label: "查找内容",
      type: "input",
      placeholder: "请输入需要查询的原有产品词",
      rules,
      tip: "原有是产品标题xxxxxxxxxx 查找词：沙发，替换沙发为替代词 {最多可总增加32个字符}"
    },
    {
      field: "replaceName",
      label: "替换内容",
      type: "input",
      placeholder: "请输入需要替换的产品关键词",
      rules,
      tip: "原有是产品标题xxxxxxxxxx 替换词：洗衣机，替换沙发为洗衣机 {最多可总增加32个字符}"
    }
  ]
};
/**
 * 修改商品型号表单配置
 */
export const modelConfig = customRules => {
  return {
    title: "修改产品型号",
    align: "right",
    list: [
      {
        field: "modeCode",
        type: "selectInput",
        placeholder: "请输入型号",
        rules: [{ validator: customRules, trigger: "blur" }],
        tip: [
          "xxxxx 基于工厂型号的开头位置增加字母或字数{ 如:“MS，MS+原有工厂型号编码” }",
          "基于工厂型号的结尾位置增加字母或数字 {如“ 001，原有工厂型号编码+001“ }",
          "自定义商品型号序列增加如：MS001，自动根据值往后序列生成{“MS001~MS002+”}"
        ]
      }
    ]
  };
};

/**
 * 修改虚拟销量表单配置
 */
export const virtualSalesConfig = customRules => {
  return {
    title: "批量调整虚拟销量",
    align: "right",
    list: [
      {
        label: "随机销量调整",
        type: "inputRange",
        minField: "minNum",
        maxField: "maxNum",
        field: "none",
        rules: [{ validator: customRules, trigger: "blur" }],
        tip: "虚拟销量会基于真实销量累计，如存在没有真实销量时，根据虚拟数值为基础，请将虚拟数值范围间隔加大，销量更具有真实性"
      }
    ]
  };
};

/**
 * 价格对比
 */
export const alterColumns = ["SKU编码", "规格", "尺寸", "单位", "销量", "价格前后", "供应价", "库存", "正价", "特价", "操作"];

/**
 * 二次确认弹窗文本
 */
export const sureConfig = {
  del: "删除商品后，将会在回收站中保留24小时，24小时后商品将自动永久删除，请确认是否删除该商品?",
  returned: "确定要将当前商品返还平台?",
  read: "当前商品存在价格变动调整，请在变更明细中查看详细改动明细，如点击确认知晓后，此商品将会移除价格变更通知，请确认是否已知晓价格变更明细 ~ ~",
  quash: "将商品状态还原到上一个商品状态，请确认是否撤回商品？",
  delRecycle: "注意：一旦删除，将无法恢复！",
  up: "是否批量上架选中的商品？"
};

/**
 * 批量操作警告文案
 */
export const batchText = {
  down: {
    tip: "商品下架后，将不在设计师商城前台展示，是否确认要继续下架？",
    btnText: "仍要下架"
  },
  up: {
    tip: "您正在对商品进行提交上架申请，提交申请后，商品需要通过审核后才能上架成功，请再次确认是否上架商品？",
    btnText: "上架"
  },
  reListed: {
    tip: "您正在对商品进行提交上架申请，提交申请后，商品需要通过审核后才能上架成功，请再次确认是否上架商品？",
    btnText: "上架"
  },
  returned: {
    tip: "您正在对商品进行返回平台操作，请再次确认是否返回平台？",
    btnText: "返回平台"
  }
};
